package com.hnevc.basemodel1;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.Scanner;

/**
 *  任务一：实现趣味试题 1 的关键算法并绘制流程图（30 分）
 *	通过键盘输入某年某月某日，计算并输出这一天是这一年的第几天。例如，2001 年 3
 *  月 5 日是这一年的第 64 天。
 *	注意：使用分支结构语句实现。
 * @author Administrator
 *
 */
public class J1_1_1 {

	public static void main(String[] args) {
		Scanner scanner =  new Scanner(System.in);
		String strDate = scanner.nextLine();
		try {
			SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日");
			Date date = sdf.parse(strDate);
			Calendar c = Calendar.getInstance();
			c.setTime(date);
			System.out.println(c.get(Calendar.DAY_OF_YEAR));
			int year = c.get(Calendar.YEAR);
			int month =c.get(Calendar.MONTH)+1;
			int day = c.get(Calendar.DATE);
			int distDate = 0;
			if(year % 4 ==0 && year % 100 !=0){
				//是闰年
				for(int i=1;i<month; i++){
					if(i == 1 || i==3 || i==5 || i==7 || i== 8 || i== 10){
						distDate += 31;
					}
					else if(i == 2){
						distDate += 28;
					}else{
						distDate += 30;
					}
				}
			}else{
				//不是闰年
				for(int i=1;i<month; i++){
					if(i == 1 || i==3 || i==5 || i==7 || i== 8 || i== 10 ){
						distDate += 31;
					}
					else if(i == 2){
						distDate += 29;
					}else{
						distDate += 30;
					}
				}
			}
			System.out.println(distDate+day);
		} catch (ParseException e) {
			System.out.println("请输入正确的日期格式：2011年11月12日");
		}
		

	}

}
